package org.sanguine.tests.protei.springapp.mvc.models;

import org.sanguine.tests.protei.springapp.mvc.models.annotations.Primary;

import java.io.Serializable;

/**
 * Created by alex on 27.02.14.
 * Author: Alex Kuznetsov
 */

/**
 * Объект-оболочка для хранения элементов
 */
public interface Entity extends Serializable {

    /**
     * Получить идентификатор элемента
     * @return - идентификатор
     * Аннотация @Primary сообщает, что данное свойство будет являтся первичным ключом в хранилище
     */
    @Primary
    public String getId();

    /**
     * Установить значение идентификатора элемента
     * @param id - новый идентификатор
     * Аннотация @Primary сообщает, что данное свойство будет являтся первичным ключом в хранилище
     * Оба метода должны быть аннотированы
     */

    @Primary
    public void setId(String id);
}
